<html>
<body>
<h1>JEE Plugin</h1>

<p>The JEE (Java Enterprise Edition) plugin supports packaging of enterprise applications,
    including EJBs, WARs, RARs and EARs. At present, only WARs have been implemented.
</p>

<div id="war-exploded-template">
    <p><b>Properties:</b></p>

    <p>All properties are optional unless stated otherwise.</p>
    <ul>
        <li><b>artifactName</b> <i>Mandatory.</i> The name of the <tt>war</tt> artifact to package</li>
        <li><b>output</b> <i>Mandatory.</i> The directory to generate the exploded .war file into</li>
        <li><b>libPath</b> <i>Mandatory.</i> The name of the project path that contains the libraries to copy to the
            WEB-INF/lib directory
        </li>
        <li><b>libPattern</b> <i>Mandatory.</i> A pattern for how the libraries are to be named. The
            pattern is a string that contain variables for the group, name, type, version and extension enclosed
            in <tt>#{}</tt>. e.g. the following is a valid pattern
            <tt>#{group}_#{name}_#{type}_#{version}.#{extension}</tt></li>
        <li><b>webapp</b> <i>Mandatory.</i> Is a</li>
        <li><b>classes</b> <i>Mandatory.</i></li>
    </ul>
    <p>The <b>webapp</b> property refers to the web app sources and the <b>classes</b> property refers to classes
        destined for WEB-INF/classes.
        Both properties each have the following nested properties:</p>
    <ul>
        <li>
            <b>output</b> <i>Mandatory</i>. The directory to copy the resources to.
        </li>
        <li>
            <b>filtered</b> A map of filesets that contain resources that will be processed with filtering (token
            substitution)
        </li>
        <li>
            <b>unfiltered</b> A map of filesets that contain resources that will be processed without filtering (token
            substitution)
        </li>
        <li>
            <b>filters</b> A map of filesets that contain filters. The filters should be property files containing
            name/value
            pairs of tokens
        </li>
        <li>
            <b>ignoredTokensPrefix</b> The property prefix for tokens to ignore. Defaults to q.resources.
        </li>
        <li>
            <b>addPropertiesAsTokens</b> If true (the default), quokka properties (includes system properties) are added
            as tokens for filtering.
        </li>
    </ul>
</div>
<div id="war-template">
    <p><b>Properties:</b></p>

    <p>All properties are optional unless stated otherwise.</p>
    <ul>
        <li><b>artifactName</b> <i>Mandatory.</i> The name of the <tt>war</tt> artifact to package</li>
        <li><b>explodedOutput</b> <i>Mandatory.</i> The directory that contains the exploded war package</li>
        <li><b>manifest</b> The location of a custom manifest file</li>
        <li><b>needxmlfile</b> Flag to indicate whether or not the web.xml file is needed. I=it should be set to false
            when generating servlet 2.5+ WAR files without a web.xml file
        </li>
        <li><b>webxml</b> The servlet configuration descriptor to use (WEB-INF/web.xml)</li>
        <li><b>compress</b> Not only store data but also compress them, defaults to true. Unless you set the
            keepcompression attribute to false, this will apply to the entire archive, not only the files you've added
            while updating.
        </li>
        <li><b>keepcompression</b> For entries coming from existing archives (like nested zipfilesets or while updating
            the archive), keep the compression as it has been originally instead of using the compress attribute.
            Defaults false.
        </li>
        <li><b>encoding</b> The character encoding to use for filenames inside the archive. Defaults to UTF8. It is not
            recommended to change this value as the created archive will most likely be unreadable for Java otherwise.
        </li>
        <li><b>filesonly</b> Store only file entries, defaults to false</li>
        <li><b>whenmanifestonly</b> Behavior when no files match. Valid values are "fail", "skip", and "create". Default
            is "create".
        </li>
        <li><b>update</b> Indicates whether to update or overwrite the destination file if it already exists. Default is
            "false".
        </li>
        <li><b>duplicate</b> Behavior when a duplicate file is found. Valid values are "add", "preserve", and "fail".
            The default value is "add".
        </li>
        <li><b>roundup</b> Whether the file modification times will be rounded up to the next even number of seconds.
            Zip archives store file modification times with a granularity of two seconds, so the times will either be
            rounded up or down. If you round down, the archive will always seem out-of-date when you rerun the task, so
            the default is to round up. Rounding up may lead to a different type of problems like JSPs inside a web
            archive that seem to be slightly more recent than precompiled pages, rendering precompilation useless.
            Defaults to true.
        </li>
        <li><b>level</b> Non-default level at which file compression should be performed. Valid values range from 0 (no
            compression/fastest) to 9 (maximum compression/slowest).
        </li>
    </ul>
</div>
<div id="content-after">
</div>
</body>
</html>